package seguranca.model;
// Generated Oct 23, 2014 7:15:00 PM by Hibernate Tools 4.3.1


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

/**
 * TbUsuario generated by hbm2java
 */
@Entity
@Table(name="tb_usuario"
    ,catalog="bd_prototipo"
    , uniqueConstraints = @UniqueConstraint(columnNames="usr_usuario") 
)
public class TbUsuario  implements java.io.Serializable {


     private Integer idtUsuario;
     private TbPerfil tbPerfil;
     private TbPessoa tbPessoa;
     private String usrUsuarioCad;
     private Date dtaUsuarioCad;
     private String usrUsuario;
     private String pwdUsuario;
     private boolean stsUsuario;
     private Set<TaUsuarioRequisicao> taUsuarioRequisicaos = new HashSet<TaUsuarioRequisicao>(0);

    public TbUsuario() {
    }

	
    public TbUsuario(TbPerfil tbPerfil, TbPessoa tbPessoa, String usrUsuarioCad, Date dtaUsuarioCad, String usrUsuario, String pwdUsuario, boolean stsUsuario) {
        this.tbPerfil = tbPerfil;
        this.tbPessoa = tbPessoa;
        this.usrUsuarioCad = usrUsuarioCad;
        this.dtaUsuarioCad = dtaUsuarioCad;
        this.usrUsuario = usrUsuario;
        this.pwdUsuario = pwdUsuario;
        this.stsUsuario = stsUsuario;
    }
    public TbUsuario(TbPerfil tbPerfil, TbPessoa tbPessoa, String usrUsuarioCad, Date dtaUsuarioCad, String usrUsuario, String pwdUsuario, boolean stsUsuario, Set<TaUsuarioRequisicao> taUsuarioRequisicaos) {
       this.tbPerfil = tbPerfil;
       this.tbPessoa = tbPessoa;
       this.usrUsuarioCad = usrUsuarioCad;
       this.dtaUsuarioCad = dtaUsuarioCad;
       this.usrUsuario = usrUsuario;
       this.pwdUsuario = pwdUsuario;
       this.stsUsuario = stsUsuario;
       this.taUsuarioRequisicaos = taUsuarioRequisicaos;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)

    
    @Column(name="idt_usuario", unique=true, nullable=false)
    public Integer getIdtUsuario() {
        return this.idtUsuario;
    }
    
    public void setIdtUsuario(Integer idtUsuario) {
        this.idtUsuario = idtUsuario;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="cod_perfil", nullable=false)
    public TbPerfil getTbPerfil() {
        return this.tbPerfil;
    }
    
    public void setTbPerfil(TbPerfil tbPerfil) {
        this.tbPerfil = tbPerfil;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="cod_pessoa", nullable=false)
    public TbPessoa getTbPessoa() {
        return this.tbPessoa;
    }
    
    public void setTbPessoa(TbPessoa tbPessoa) {
        this.tbPessoa = tbPessoa;
    }

    
    @Column(name="usr_usuario_cad", nullable=false, length=20)
    public String getUsrUsuarioCad() {
        return this.usrUsuarioCad;
    }
    
    public void setUsrUsuarioCad(String usrUsuarioCad) {
        this.usrUsuarioCad = usrUsuarioCad;
    }

    @Temporal(TemporalType.DATE)
    @Column(name="dta_usuario_cad", nullable=false, length=10)
    public Date getDtaUsuarioCad() {
        return this.dtaUsuarioCad;
    }
    
    public void setDtaUsuarioCad(Date dtaUsuarioCad) {
        this.dtaUsuarioCad = dtaUsuarioCad;
    }

    
    @Column(name="usr_usuario", unique=true, nullable=false, length=20)
    public String getUsrUsuario() {
        return this.usrUsuario;
    }
    
    public void setUsrUsuario(String usrUsuario) {
        this.usrUsuario = usrUsuario;
    }

    
    @Column(name="pwd_usuario", nullable=false, length=128)
    public String getPwdUsuario() {
        return this.pwdUsuario;
    }
    
    public void setPwdUsuario(String pwdUsuario) {
        this.pwdUsuario = pwdUsuario;
    }

    
    @Column(name="sts_usuario", nullable=false)
    public boolean isStsUsuario() {
        return this.stsUsuario;
    }
    
    public void setStsUsuario(boolean stsUsuario) {
        this.stsUsuario = stsUsuario;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="tbUsuario")
    public Set<TaUsuarioRequisicao> getTaUsuarioRequisicaos() {
        return this.taUsuarioRequisicaos;
    }
    
    public void setTaUsuarioRequisicaos(Set<TaUsuarioRequisicao> taUsuarioRequisicaos) {
        this.taUsuarioRequisicaos = taUsuarioRequisicaos;
    }




}


